0.2.0 (2024-04-23).md
Unicode text, UTF-8 text
Changelog for version 0.2.0
It's been a while, but I haven't sit there doing nothing. Still άλφα, of course, but it's getting closer to βήτα, at which point all major features will be implemented and only polishing, bugfixing, and minor features will be left. These are basically all commits of 1-23 April 2024.
Note: 🔥 marks important updates.
New features in this release
🔥 There is now a diff view for commits.
Commenting on diffs will be a major focus in the future.
Currently, there is no way to diff multiple refs, only one commit, but this will also be added really soon.
The diff view is not yet available for pull requests, but I will figure out a way to make it work for PRs as well.
🔥 Added commit pages.
They show the metadata, timestamps, identity, authors and the new diff view.
Commit titles in the log are linked to their respective commit page.
🔥 The notification page is working.
Currently the only supported types are
welcome
andcommit
.Types will be made available to plugins when plugin support will be added.
Pink badge shows the number of notifications (actually, it always did, because everyone had a welcome notification, but now you can actually see or clear them).
It is the first page to use htmx. Sadly, it requires JavaScript, and more parts will do, BUT: it will never become an SPA or use a complicated front-end framework; there will soon be a lite version that doesn't use JavaScript, as well as a JSON API that you could use to make your own clients; just like the server-side, the JavaScripts are free as well; JS was already required for some pages; there is nothing we can do about it, the only other way would have been to make it work very slowly by using a full page reload; * I don't like JavaScript either, but it's the only thing browsers understand!
You can mark notifications as read and unread. * You can also mark all notifications as read. This is done with a form submission, so it works without JavaScript.
🔥 Forum thread state is now supported.
It works just like pull request state, and it's got two states: active (GitHub's "open"); done (GitHub's "closed").
There's a button inside the thread to toggle the state.
It can be changed by both the thread creator and users with repository write access.
It is not yet possible to filter threads by state, but this will be added soon.
No labels yet, but they will be added soon.
🔥 Repository notification control.
When you mark a repository as a favourite, you can choose activity types to be notified about.
Currently, the only supported type is
commit
, but more will be added soon.
HTML insertions and deletions (
<ins>
,<del>
) have now got a style, which is used in the diff view.Currently they are only red and green; a way to make them distinguishable for colourblind users is planned - if anyone has any ideas, please post on the forum or send me a mail.
Anyways, one can use themes to rectify this and change them to suit their tastes and needs, as they can with any other part of the UI.
The CSS now includes emphasis styles that work with the emphasis generated from markdown.
Emphasis 1 is italic, emphasis 2 is bold, emphasis 3 is italic and bold, emphasis 4 is underlined, emphasis 5 is italic and underlined, emphasis 6 is bold and underlined, and emphasis 7 is italic, bold, and underlined.
There's now a honeypot field in the registration form.
It has
display: none
and is targeted usingnth-child
so the fact that it's invisible is not detectable from the markup or DOM.It looks normal and ostensibly requires confirming the email; in reality it must be typed only once.
There are no real free software CAPTCHAs, for now this does the job.
It actually existed before but was not checked for server-side, so it was useless.
The markdown parser now supports comments.
Comments are lines that begin with
;
.
The site now works with GNU's LibreJS extension: all JavaScripts were marked as free.
Changed features in this release
The code display component is now very different and no longer uses pseudo-elements, in order to provide more flexibility.
It also uses CSS grid for nice alignment.
It is used in diffs and text file views.
Some tiny components are now rendered with Jinja2 instead of f-strings.
Mail sending is now much simpler and handled from the place where the notification is created.
Fixed bugs in this release
The follow button now doesn't appear on your own profile, matching the already existing server-side check for following yourself.
File render options are now translatable.
In the ref selector menu, the commit hash is now displayed without the leading tilde that distinguishes it from branch names.
Various markdown parser fixes:
Emphasis parsing had a fix.
Link texts can now contain inline elements.
Nested ordered lists are now finally parsed correctly; this is done by the parser trying multiple variants to see if anything works, otherwise it falls back to paragraph parsing.
The footer is now formatted, so the contact email will get filled in correctly.
Documentation updates
An article describing how to use the markdown formatting features has been added.
1Changelog for version 0.2.0 2=========================== 3 4It's been a while, but I haven't sit there doing nothing. Still άλφα, of course, but it's 5getting closer to βήτα, at which point all major features will be implemented and only 6polishing, bugfixing, and minor features will be left. These are basically all commits of 1-23 7April 2024. 8 9*Note: 🔥 marks important updates.* 10 11New features in this release 12---------------------------- 13 14* **🔥 There is now a diff view for commits.** 15* Commenting on diffs will be a major focus in the future. 16* Currently, there is no way to diff multiple refs, only one commit, but this will also be 17added really soon. 18* The diff view is not yet available for pull requests, but I will figure out a way to make 19it work for PRs as well. 20* **🔥 Added commit pages.** 21* They show the metadata, timestamps, identity, authors and the new diff view. 22* Commit titles in the log are linked to their respective commit page. 23* **🔥 The notification page is working.** 24* Currently the only supported types are `welcome` and `commit`. 25* Types will be made available to plugins when plugin support will be added. 26* Pink badge shows the number of notifications (actually, it always did, because everyone had 27a welcome notification, but now you can actually see or clear them). 28* It is the first page to use [htmx](https://htmx.org/). Sadly, it requires JavaScript, and 29more parts will do, **BUT**: 30* it will never become an SPA or use a complicated front-end framework; 31* there will soon be a lite version that doesn't use JavaScript, as well as a JSON API that 32you could use to make your own clients; 33* just like the server-side, the JavaScripts are free as well; 34* JS was already required for some pages; there is nothing we can do about it, the only 35other way would have been to make it work very slowly by using a full page reload; 36* I don't like JavaScript either, but it's the only thing browsers understand! 37* You can mark notifications as read and unread. 38* You can also mark all notifications as read. This is done with a form submission, so it 39works without JavaScript. 40* **🔥 Forum thread state is now supported.** 41* It works just like pull request state, and it's got two states: 42* active (GitHub's "open"); 43* done (GitHub's "closed"). 44* There's a button inside the thread to toggle the state. 45* It can be changed by both the thread creator and users with repository write access. 46* It is not yet possible to filter threads by state, but this will be added soon. 47* No labels yet, but they will be added soon. 48* **🔥 Repository notification control.** 49* When you mark a repository as a favourite, you can choose activity types to be notified 50about. 51* Currently, the only supported type is `commit`, but more will be added soon. 52* HTML insertions and deletions (`<ins>`, `<del>`) have now got a style, which is used in the 53diff view. 54* Currently they are only red and green; a way to make them distinguishable for colourblind 55users is planned - if anyone has any ideas, please post on the forum or send me a mail. 56* Anyways, one can use themes to rectify this and change them to suit their tastes and needs, 57as they can with any other part of the UI. 58* The CSS now includes emphasis styles that work with the emphasis generated from markdown. 59* Emphasis 1 is italic, emphasis 2 is bold, emphasis 3 is italic and bold, emphasis 4 is 60underlined, emphasis 5 is italic and underlined, emphasis 6 is bold and underlined, and 61emphasis 7 is italic, bold, and underlined. 62* There's now a honeypot field in the registration form. 63* It has `display: none` and is targeted using `nth-child` so the fact that it's invisible 64is not detectable from the markup or DOM. 65* It looks normal and ostensibly requires confirming the email; in reality it must be typed 66only once. 67* There are no real free software CAPTCHAs, for now this does the job. 68* It actually existed before but was not checked for server-side, so it was useless. 69* The markdown parser now supports comments. 70* Comments are lines that begin with `;`. 71* The site now works with GNU's LibreJS extension: all JavaScripts were marked as free. 72 73Changed features in this release 74-------------------------------- 75* The code display component is now very different and no longer uses pseudo-elements, in order 76to provide more flexibility. 77* It also uses CSS grid for nice alignment. 78* It is used in diffs and text file views. 79* Some tiny components are now rendered with Jinja2 instead of f-strings. 80* Mail sending is now much simpler and handled from the place where the notification is created. 81 82Fixed bugs in this release 83-------------------------- 84 85* The follow button now doesn't appear on your own profile, matching the already existing 86server-side check for following yourself. 87* File render options are now translatable. 88* In the ref selector menu, the commit hash is now displayed without the leading tilde that 89distinguishes it from branch names. 90* Various markdown parser fixes: 91* Emphasis parsing had a fix. 92* Link texts can now contain inline elements. 93* Nested ordered lists are now finally parsed correctly; this is done by the parser trying 94multiple variants to see if anything works, otherwise it falls back to paragraph parsing. 95* The footer is now formatted, so the contact email will get filled in correctly. 96 97Documentation updates 98--------------------- 99 100* An article describing how to use the markdown formatting features has been added. 101